package com.pe.regope.presentacion.controller.consultas;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import javax.annotation.Resource;

import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;

import com.pe.regope.negocio.dto.IpnpDTO;
import com.pe.regope.negocio.service.IpnpService;


@Controller
@Scope("view")
public class ConsultaIPNPController {
	
	private List<IpnpDTO> listaIPNP;
	private String nroIpnp;
	private String conclusion;
	private String modalidadOperacion;
	private String nroIpnpAclara;
	private Date fechaIpnpAclara;
	private Integer tipoIpnp;
	private Integer tipoEnvio;
	private Date fechaIpnp;
	private String mensajeIpnp;

	
	
	@Resource
	IpnpService ipnpService;

	public ConsultaIPNPController(){
		listaIPNP = new ArrayList<IpnpDTO>();
	}

	public List<IpnpDTO> getListaIPNP() {
		return listaIPNP;
	}

	public void setListaIPNP(List<IpnpDTO> listaIPNP) {
		this.listaIPNP = listaIPNP;
	}

	
	public String getConclusion() {
		return conclusion;
	}

	public void setConclusion(String conclusion) {
		this.conclusion = conclusion;
	}

	public String getModalidadOperacion() {
		return modalidadOperacion;
	}

	public void setModalidadOperacion(String modalidadOperacion) {
		this.modalidadOperacion = modalidadOperacion;
	}

	public String getNroIpnpAclara() {
		return nroIpnpAclara;
	}

	public void setNroIpnpAclara(String nroIpnpAclara) {
		this.nroIpnpAclara = nroIpnpAclara;
	}

	public Date getFechaIpnpAclara() {
		return fechaIpnpAclara;
	}

	public void setFechaIpnpAclara(Date fechaIpnpAclara) {
		this.fechaIpnpAclara = fechaIpnpAclara;
	}

	public void buscarXNroIpnp(){
		listaIPNP = new ArrayList<IpnpDTO>();
		Integer nro=0;
		try{
			nro = Integer.parseInt(nroIpnp);
		}catch (Exception e){
			if(nroIpnp.equals("*")){
				listaIPNP=ipnpService.obtenerListaIPNP();
			}
			return;
		}
		listaIPNP = ipnpService.obtenerListaIPNPporNumero(nro);
		if(listaIPNP!=null)
			listaIPNP.size();
	}

	public String getNroIpnp() {
		return nroIpnp;
	}

	public void setNroIpnp(String nroIpnp) {
		this.nroIpnp = nroIpnp;
	}
	
	public void mensajeIpnp(){
		if (nroIpnp.getClass().equals("".getClass()) && !nroIpnp.equals("*")){
			setMensajeIpnp("");
		}else setMensajeIpnp("No puede ingresar una cadena"); 
	}

	public Integer getTipoIpnp() {
		return tipoIpnp;
	}

	public void setTipoIpnp(Integer tipoIpnp) {
		this.tipoIpnp = tipoIpnp;
	}

	public Integer getTipoEnvio() {
		return tipoEnvio;
	}

	public void setTipoEnvio(Integer tipoEnvio) {
		this.tipoEnvio = tipoEnvio;
	}

	public Date getFechaIpnp() {
		return fechaIpnp;
	}

	public void setFechaIpnp(Date fechaIpnp) {
		this.fechaIpnp = fechaIpnp;
	}

	public String getMensajeIpnp() {
		return mensajeIpnp;
	}

	public void setMensajeIpnp(String mensajeIpnp) {
		this.mensajeIpnp = mensajeIpnp;
	}
	

}
